package com.xbongbong.pro.enums.menu.enums;

import com.xbongbong.i18n.util.I18nMessageUtil;
import com.xbongbong.pro.enums.AccessLinkEnum;
import com.xbongbong.pro.enums.permission.enums.ProPermissionAliasEnum;
import lombok.Getter;

/**
 * @author 吴峰
 * @version v1.0
 * @date 2019/1/15 15:07
 * @desrcption 其他设置
 * @since v1.0
 */
@Getter
public enum OtherSetEnum {

    /**
     * 其他设置枚举类
     */
//    PUBLIC_SEA_POOL_RULES("enum.otherSet.name.public_sea_pool_rules", "publicSeaPoolRules", AccessLinkEnum.PUBLIC_SEA_POOL_RULES, ProPermissionAliasEnum.PUBLIC_SET.getAlias()),
//
//    AUTOMATICALLY_ASSIGNED("enum.otherSet.name.automatically_assigned", "automaticallyAssigned", AccessLinkEnum.AUTOMATICALLY_ASSIGNED_RULES, ""),
//
//    PUBLIC_SEA_POOL_GROUP("enum.otherSet.name.public_sea_pool_group", "publicSeaPoolGroup", AccessLinkEnum.PUBLIC_SEA_POOL_GROUP, ProPermissionAliasEnum.PUBLIC_GROUP_SET.getAlias()),

    PUBLIC_CLUE_SEA_POOL("enum.otherSet.name.public_clue_sea_pool", "publicClueSeaPool", AccessLinkEnum.PUBLIC_CLUE_SEA_POOL, ProPermissionAliasEnum.CLUE_PUBLIC_SET.getAlias()),

    PUBLIC_CUSTOMER_SEA_POOL("enum.otherSet.name.public_customer_sea_pool", "publicCustomerSeaPool", AccessLinkEnum.PUBLIC_CUSTOMER_SEA_POOL, ProPermissionAliasEnum.CUSTOMER_PUBLIC_SET.getAlias()),


//    MULTI_CURRENCY_RULES("多币种规则", "multiCurrencyRules", AccessLinkEnum.MULTI_CURRENCY_RULES),

    GOAL_MANAGEMENT("enum.otherSet.name.goal_management", "goalManagement", AccessLinkEnum.GOAL_MANAGEMENT, ProPermissionAliasEnum.PERFORMANCE_OBJECT_SET.getAlias()),

    PK_LIST_SETTINGS("enum.otherSet.name.pk_list_settings", "pkListSettings", AccessLinkEnum.PK_LIST_SETTINGS, ProPermissionAliasEnum.PK_SET.getAlias()),

    CHECK_IN_SETTINGS("enum.otherSet.name.check_in_settings", "checkInSettings", AccessLinkEnum.CHECK_IN_SETTINGS, ProPermissionAliasEnum.SIGN_IN_SET.getAlias()),

    WORK_REPORT_SETTINGS("enum.otherSet.name.work_report_settings", "workReportSettings", AccessLinkEnum.WORK_REPORT_SETTINGS, ProPermissionAliasEnum.WORK_REPORT_SET.getAlias()),

//    AI_ASSISTANT("智能助手", "aiAssistant", AccessLinkEnum.AI_ASSISTANT, ProPermissionAliasEnum.AI_ASSISTANT.getAlias()),

    FUND_ACCOUNT("enum.otherSet.name.fund_account", "fundAccount", AccessLinkEnum.FUND_ACCOUNT, ProPermissionAliasEnum.FUND_ACCOUNT.getAlias()),

    FUND_SET("enum.otherSet.name.fund_set", "fundSet", AccessLinkEnum.FUND_SET, ProPermissionAliasEnum.FUND_ACCOUNT.getAlias()),

    JXC_SETTINGS("enum.otherSet.name.jxc_settings", "jxcSettings", AccessLinkEnum.JXC_SETTINGS, ProPermissionAliasEnum.JXC_SET.getAlias()),

    PRICE_LIST_SETTINGS("enum.otherSet.name.price_list_settings", "priceListSettings", AccessLinkEnum.PRICE_LIST_SETTINGS, ProPermissionAliasEnum.PRICE_LIST_SET.getAlias()),

    ELECTRONIC_SURFACE_SINGLE_SETTINGS("enum.otherSet.name.electronic_surface_single_settings", "electronicSurfaceSingleSettings", AccessLinkEnum.ELECTRONIC_SURFACE_SINGLE_SETTINGS, ProPermissionAliasEnum.ELECTRONIC_SURFACE_SINGLE_SETTINGS.getAlias()),

    LOGISTICS_QUERY("enum.otherSet.name.logistics_query", "logisticsQuery", AccessLinkEnum.LOGISTICS_QUERY, ProPermissionAliasEnum.LOGISTICS_QUERY.getAlias()),

    GLOBAL_WATERMARK("enum.otherSet.name.global_watermark", "GLOBAL_WATERMARK", AccessLinkEnum.GLOBAL_WATERMARK, "globalWaterMark"),

    MARKETING_MANAGEMENT("enum.otherSet.name.marketing_management", "marketingManagement", AccessLinkEnum.MARKETING_MANAGEMENT_SETTINGS, ProPermissionAliasEnum.MARKETING_MANAGEMENT_SETTINGS.getAlias()),

    SSO("enum.otherSet.name.sso", "sso", AccessLinkEnum.SSO, ProPermissionAliasEnum.SSO.getAlias()),
    ;

    private String name;

    private String alias;

    private AccessLinkEnum accessLinkEnum;

    private String permission;

    OtherSetEnum(String name, String alias, AccessLinkEnum accessLinkEnum, String permission){
        this.name = name;
        this.alias = alias;
        this.accessLinkEnum = accessLinkEnum;
        this.permission = permission;
    }

    public String getName() {
        return I18nMessageUtil.getMessage(name);
    }
}
